接口设计
把server端当做一个黑盒,它将怎样与前端通讯?
功能范围
- B端,用户注册,作品管理,模板
- 编辑器,单个作品的内容获取、修改、预览和发布
功能拆分
- 用户信息
- 作品管理
- 模板
- 编辑器(发布和渠道,可以单独设计)
- 工具类
用户信息
- 获取手机短信验证码
- 登录(包含注册)
- 获取用户信息
- 修改用户信息
模板
- 首页推荐模板列表(搜索,分页) ——不需要登录校验
- 获取单个模板信息——不需要登录校验
- 我的模板列表(搜索,分页)
作品管理
- 创建空白作品
- 复制作品(通过模板创建) PS: 模板即作品,只是有一个标志而已,数据库设计时可以看出来
- 删除作品
- 恢复作品
- 转赠作品
- 我的作品列表(搜索,分页)
- 我的回收站列表(搜索,分页)
编辑器
设计时分开,但代码中可能会和作品管理写在一起,因为都是针对作品的。
- 查询单个作品信息
- 保存作品
- 预览作品
- 发布作品
- 发布为模板
渠道
- 创建渠道
- 删除渠道修
- 改渠道名称
- 获取单个作品的所有渠道
工具类
- 上传图片
统一的输出格式
{
errno: 0, // 错误码,无错误则返回 0
data: {...}, // 或者 [...]
message: 'xxx'
}
留作业,设计每个接口的输入和输出,可使用第三方工具 YAPI。
其他
作品统计,会用到单独的统计服务,不在这里出数据
预览作品在h5-server中